//package com.payment.controller.paynotify;
//
//import com.alibaba.fastjson.JSON;
//import com.alibaba.fastjson.JSONArray;
//import com.payment.entity.autosubcon.UserNoCardOrder;
//import com.payment.entity.autosubcon.UserOrderPackage;
//import com.payment.entity.autosubcon.UserOrderPayment;
//import com.payment.entity.newrequestnotify.request.RequestNotify;
//import com.payment.entity.newrequestnotify.response.ResponseNotify;
//import com.payment.entity.payresults.PaypalNotificationpaymentResults;
//import com.payment.entity.payresults.PaypalNotificationpaymentResultsReversed;
//import com.payment.entity.payresults.PaypalpaymentResults;
//import com.payment.entity.payresults.paypal.*;
//import com.payment.service.*;
//import com.payment.utils.Constant;
//import com.payment.utils.HttpUtil;
//import io.swagger.annotations.Api;
//import org.apache.commons.lang3.StringUtils;
//import org.apache.log4j.Logger;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.web.bind.annotation.CrossOrigin;
//import org.springframework.web.bind.annotation.RequestBody;
//import org.springframework.web.bind.annotation.RequestMapping;
//import org.springframework.web.bind.annotation.RestController;
//
//import java.io.UnsupportedEncodingException;
//import java.net.URLDecoder;
//import java.text.SimpleDateFormat;
//import java.util.Date;
//import java.util.HashMap;
//import java.util.List;
//import java.util.Map;
//
//@RestController
//@Api(description = "paypal支付回调")
///**
// * 1，使用领科的paypal收款账号收款，paypal支付回调接口：
// *
// * 2，适用于新的客户：最新版的的领科 H5 和其他想要使用领科paypal收款接口,收款的（可以是客户自己的账号或者领科发账号）客户；
// *
// * 3，更新的数据表为：user_order_package_t，user_order_payment_t；
// *
// *  4，更新的数据库为：v-shop
// *
// * @author lm
// * @date 2019/11/06
// */
//public class PaypalpayNotifyController {
//    private static Logger logger = Logger.getLogger(PaypalpayNotifyController.class);
//
//    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//    SimpleDateFormat s = new SimpleDateFormat("yyyyMMddHHmmss");
//    @Autowired
//    private NotificationpaymentService notificationpaymentService;
//    @Autowired
//    private PartnerService partnerService;
//    @Autowired
//    private UserOrderPackageService orderService;
//    @Autowired
//    private UserOrderPaymentService paymentService;
//
//    @Autowired
//    private UserNoCardOrderService userNoCardOrderService;
//    /*支付方式:1-微信支付，2-paypal支付，3-oceanpay支付,4-第三方自行支付*/
//
//    /***
//     * 此方法专门处理paypal的ipn回调
//     * @param reStr
//     * @return
//     * @throws Exception
//     */
//    //@RequestMapping(value = "ipn")
//    @CrossOrigin
//    public String ipn(@RequestBody String reStr) throws Exception {
//        logger.info("paypal的ipn回调:" + reStr);
//        if (StringUtils.isNotBlank(reStr)) {
//            try {
//                reStr = URLDecoder.decode(reStr, "UTF-8");
//                String[] firstStr = reStr.split("&");
//                Map<String, String> m = new HashMap<String, String>();
//                for (int i = 0; i < firstStr.length; i++) {
//                    if (firstStr[i].split("=").length == 1) {
//                        firstStr[i] = firstStr[i] + "0000";
//                    }
//                    m.put(firstStr[i].substring(0, firstStr[i].indexOf("=")), firstStr[i].substring(firstStr[i].indexOf("=") + 1));
//                }
//                String payId = m.get("invoice");
//                String payAmount = m.get("mc_gross");
//                String payCurrency = m.get("mc_currency");
//                String paymentStatus = m.get("payment_status");
//                String business = m.get("business");
//
//                if (StringUtils.isNotBlank(payId) && StringUtils.isNotBlank(payAmount) && StringUtils.isNotBlank(paymentStatus)) {
//
//                    logger.info("收款账号是：" + business + ";收款金额：" + payAmount + "付款状态是：" + paymentStatus + ";付款订单：" + payId + ";付款货币：" + payCurrency);
//
//                    //将paypal回传的交易记录入库保存下来:notification_payment_results_paypal_t
//                    int c = notificationpaymentService.findCountByOrderNumber(payId);
//
//                    //入库
//                    if (c <= 0) {
//
//                        PaypalNotificationpaymentResults results = new PaypalNotificationpaymentResults();
//                        results.setMc_gross(payAmount);
//                        results.setAmount(payAmount);
//                        results.setOrderNumber(m.get("invoice"));
//                        results.setInvoice(m.get("invoice"));
//                        results.setPayment_status(m.get("payment_status"));
//                        results.setPaymentStatus(m.get("payment_status"));
//                        results.setMc_currency(m.get("mc_currency"));
//                        results.setMcCurrency(m.get("mc_currency"));
//                        results.setTxn_id(m.get("txn_id"));
//                        results.setTxnId(m.get("txn_id"));
//                        results.setProtection_eligibility(m.get("protection_eligibility"));
//                        results.setAddress_status(m.get("address_status"));
//                        results.setPayer_id(m.get("payer_id"));
//                        results.setAddress_street(m.get("address_street"));
//                        results.setPayment_date(m.get("payment_date"));
//                        results.setCharset(m.get("charset"));
//                        results.setAddress_zip(m.get("address_zip"));
//                        results.setFirst_name(m.get("first_name"));
//                        results.setMc_fee(m.get("mc_fee"));
//                        results.setAddress_country_code(m.get("address_country_code"));
//                        results.setAddress_name(m.get("address_name"));
//                        results.setNotify_version(m.get("notify_version"));
//                        results.setCustom(m.get("custom"));
//                        results.setPayer_status(m.get("payer_status"));
//                        results.setBusiness(m.get("business"));
//                        results.setAddress_country(m.get("address_country"));
//                        results.setAddress_city(m.get("address_city"));
//                        results.setQuantity(m.get("quantity"));
//                        results.setVerify_sign(m.get("verify_sign"));
//                        results.setPayer_email(m.get("payer_email"));
//                        results.setPayment_type(m.get("payment_type"));
//                        results.setLast_name(m.get("last_name"));
//                        results.setAddress_state(m.get("address_state"));
//                        results.setReceiver_email(m.get("receiver_email"));
//                        results.setPayment_fee(m.get("payment_fee"));
//                        results.setReceipt_id(m.get("receiver_id"));
//                        results.setTxn_type(m.get("txn_type"));
//                        results.setItem_name(m.get("item_name"));
//                        results.setItem_number(m.get("item_number"));
//                        results.setResidence_country(m.get("residence_country"));
//                        results.setReceipt_id(m.get("receipt_id"));
//                        results.setTransaction_subject(m.get("transaction_subject"));
//                        results.setPayment_gross(m.get("payment_gross"));
//                        results.setIpn_track_id(m.get("ipn_track_id"));
//                        notificationpaymentService.insertPaymentResultsPaypal(results);
//
//                    }
//                    //回调的订单是成功的才要入库啊操作
//                    //支付成功
//                    if ("Completed".equalsIgnoreCase(paymentStatus)) {
//
//                        int count = orderService.findPayIdByNotify(payId);
//                        if (count <= 0) {
//                            // 成功的回调数据入库：根据支付id和金额入库：user_order_package_t
//                            List<UserOrderPackage> deviceCodeList = orderService.queryDeviceCodeByPayId(payId);
//
//                            for (UserOrderPackage uo : deviceCodeList) {
//                                String deviceCode = uo.getDeviceCode();
//
//                                if (StringUtils.isNotBlank(deviceCode)) {
//                                    String str1 = deviceCode.substring(0, 1);
//                                    if (!str1.equals("卡") && !str1.equalsIgnoreCase("c")) {
//                                        UserOrderPackage order = new UserOrderPackage();
//                                        order.setUpdateDate(sdf.format(new Date()));
//                                        order.setOrderTime(s.format(new Date()));
//                                        //直接已完成
//                                        order.setOrderStatus("3");
//                                        order.setPayId(payId);
//                                        order.setPayCurrency(payCurrency);
//                                        order.setPayAmount(payAmount);
//                                        order.setPayType(Constant.PAY_PAYPAL);
//                                        order.setPayRst("success");
//                                        order.setIsNotify("1");
//                                        order.setPayAccount("1");
//                                        order.setTransactionId(m.get("txn_id"));
//                                        orderService.updateWeiXinPayRst(order);
//
//                                    } else {
//                                        UserOrderPackage order = new UserOrderPackage();
//                                        //待发货
//                                        order.setOrderStatus("1");
//                                        order.setPayId(payId);
//                                        order.setPayCurrency(payCurrency);
//                                        order.setPayAmount(payAmount);
//                                        order.setPayType(Constant.PAY_PAYPAL);
//                                        order.setPayRst("success");
//                                        order.setIsNotify("1");
//                                        order.setPayAccount("1");
//                                        order.setTransactionId(m.get("txn_id"));
//                                        orderService.updateWeiXinPayRst(order);
//                                    }
//                                } else {
//                                    //deviceCode没取到值，但是支付记录还是要入库
//                                    UserOrderPackage order = new UserOrderPackage();
//                                    order.setUpdateDate(sdf.format(new Date()));
//                                    order.setOrderTime(s.format(new Date()));
//                                    order.setPayId(payId);
//                                    order.setOrderStatus("3");
//                                    order.setPayCurrency(payCurrency);
//                                    order.setPayAmount(payAmount);
//                                    order.setPayType(Constant.PAY_PAYPAL);
//                                    order.setPayRst("success");
//                                    order.setIsNotify("1");
//                                    order.setPayAccount("1");
//                                    order.setTransactionId(m.get("txn_id"));
//                                    orderService.updateWeiXinPayRst(order);
//                                }
//
//                            }
//
//
//                            //成功的回调数据入库：根据支付id和金额入库：user_order_payment_t
//                            UserOrderPayment payment = new UserOrderPayment();
//                            payment.setPayId(payId);
//                            payment.setPayCurrency(payCurrency);
//                            payment.setPayAmount(payAmount);
//                            payment.setPayType(Constant.PAY_PAYPAL);
//                            payment.setPayRst("success");
//                            payment.setTransactionId(m.get("txn_id"));
//                            paymentService.updateWeiXinPayRst(payment);
//
//                            //无卡订单支付结果入库：user_nocard_order_t
//                            UserNoCardOrder noCardOrder = new UserNoCardOrder();
//                            noCardOrder.setPayId(payId);
//                            noCardOrder.setPayRst("success");
//                            userNoCardOrderService.updatePayRst(noCardOrder);
//
//                            //将去北京做支付结果通知的工作交到具体的orderService处理类中去
//                            List<UserOrderPackage> userOrderList = orderService.queryOrderByPayIdAndAmount(payId, payAmount);
//
//                            if (userOrderList != null && !userOrderList.isEmpty()) {
//                                for (UserOrderPackage u : userOrderList) {
//                                    String partnerCode = u.getPartnerCode();
//                                    String orderId = u.getOrderId();
//                                    String deviceId = u.getDeviceCode();
//                                    String Amount = u.getPayAmount();
//                                    String secret = partnerService.findSecretByPartnerCode(partnerCode);
//                                    logger.info("查询到的订单orderId是:" + orderId + ";DeviceId是:" + deviceId + ";payAmount是：" + Amount + ";密钥是：" + secret);
//
//                                    RequestNotify notify = new RequestNotify();
//                                    notify.setDeviceId(deviceId);
//                                    notify.setOrderId(orderId);
//                                    notify.setPayAmount(Amount);
//                                    notify.setPayType(Constant.PAY_PAYPAL);
//                                    notify.setSecret(secret);
//                                    notify.setPartnerCode(partnerCode);
//                                    // 开始组装json
//                                    String requestStr = JSON.toJSONString(notify);
//                                    logger.info("请求北京的接口请求报文：" + requestStr);
//                                    String url = Constant.requestURI + Constant.iot_notify;
//                                    // 发送post请求，并接收返回结果
//                                    String returnStr = HttpUtil.httpPost(url, requestStr);
//                                    logger.info("北京回复的下发接口响应报文：" + returnStr);
//                                    ResponseNotify re = JSONArray.parseObject(returnStr, ResponseNotify.class);
//
//                                    if (re != null) {
//                                        if (true == Constant.RET_CODE_0000.equalsIgnoreCase(re.getRetCode()) || true == Constant.RET_CODE_0113.equalsIgnoreCase(re.getRetCode())) {
//                                            UserOrderPackage user = new UserOrderPackage();
//                                            user.setOrderId(orderId);
//                                            user.setPayId(payId);
//                                            user.setIsNotify("0");
//                                            orderService.updateWeiXinIsNotify(user);
//                                            logger.info("成功");
//
//                                        } else {
//                                            logger.info("不成功");
//                                            return null;
//                                        }
//                                    } else {
//                                        logger.info("同步接口异常");
//                                        return null;
//                                    }
//
//
//                                }
//
//                            } else {
//                                logger.info("数据库查询到的订单为null");
//                                return null;
//                            }
//
//
//                        }
//
//                    } else {
//                        //订单状态不是完成的状态
//                        logger.info("支付结果失败:" + paymentStatus);
//                        PaypalNotificationpaymentResultsReversed results = new PaypalNotificationpaymentResultsReversed();
//                        results.setMc_gross(payAmount);
//                        results.setAmount(payAmount);
//                        results.setOrderNumber(m.get("invoice"));
//                        results.setInvoice(m.get("invoice"));
//                        results.setPayment_status(m.get("payment_status"));
//                        results.setPaymentStatus(m.get("payment_status"));
//                        results.setMc_currency(m.get("mc_currency"));
//                        results.setMcCurrency(m.get("mc_currency"));
//                        results.setTxn_id(m.get("txn_id"));
//                        results.setTxnId(m.get("txn_id"));
//                        results.setProtection_eligibility(m.get("protection_eligibility"));
//                        results.setAddress_status(m.get("address_status"));
//                        results.setPayer_id(m.get("payer_id"));
//                        results.setAddress_street(m.get("address_street"));
//                        results.setPayment_date(m.get("payment_date"));
//                        results.setCharset(m.get("charset"));
//                        results.setAddress_zip(m.get("address_zip"));
//                        results.setFirst_name(m.get("first_name"));
//                        results.setMc_fee(m.get("mc_fee"));
//                        results.setAddress_country_code(m.get("address_country_code"));
//                        results.setAddress_name(m.get("address_name"));
//                        results.setNotify_version(m.get("notify_version"));
//                        results.setCustom(m.get("custom"));
//                        results.setPayer_status(m.get("payer_status"));
//                        results.setBusiness(m.get("business"));
//                        results.setAddress_country(m.get("address_country"));
//                        results.setAddress_city(m.get("address_city"));
//                        results.setQuantity(m.get("quantity"));
//                        results.setVerify_sign(m.get("verify_sign"));
//                        results.setPayer_email(m.get("payer_email"));
//                        results.setPayment_type(m.get("payment_type"));
//                        results.setLast_name(m.get("last_name"));
//                        results.setAddress_state(m.get("address_state"));
//                        results.setReceiver_email(m.get("receiver_email"));
//                        results.setPayment_fee(m.get("payment_fee"));
//                        results.setReceipt_id(m.get("receiver_id"));
//                        results.setTxn_type(m.get("txn_type"));
//                        results.setItem_name(m.get("item_name"));
//                        results.setItem_number(m.get("item_number"));
//                        results.setResidence_country(m.get("residence_country"));
//                        results.setReceipt_id(m.get("receipt_id"));
//                        results.setTransaction_subject(m.get("transaction_subject"));
//                        results.setPayment_gross(m.get("payment_gross"));
//                        results.setIpn_track_id(m.get("ipn_track_id"));
//
//                        notificationpaymentService.insertPaypalReversed(results);
//
//                    }
//                }
//            } catch (UnsupportedEncodingException e) {
//                e.printStackTrace();
//                logger.info("ipn回调reStr转码失败：" + e);
//                return null;
//            }
//        } else {
//            logger.info("ipn回调内容为空");
//            return null;
//        }
//        return null;
//    }
//
//    /****
//     * 此方法专门处理paypal的webhook回调
//     * @param reStr
//     * @return
//     * @throws Exception
//     */
//    //@RequestMapping(value = "notifyWebhook")
//    @CrossOrigin
//    public String webhook(@RequestBody String reStr) throws Exception {
//        if (StringUtils.isNotBlank(reStr)) {
//            logger.info("paypal的webhook回调内容是:" + reStr);
//            try {
//                JsonRootBean jsonRootBean = JSON.parseObject(reStr, JsonRootBean.class);
//                if (jsonRootBean == null) {
//                    logger.info("请求jsonRootBean参数为null");
//                    return null;
//                } else {
//                    Resource resource = jsonRootBean.getResource();
//                    if (resource == null) {
//                        logger.info("请求jsonRootBean参数为null");
//                        return null;
//                    } else {
//                        //Resource
//                        String payId = resource.getInvoice_number();
//                        String state = resource.getState();
//                        String parent_payment = resource.getParent_payment();
//
//                        if (StringUtils.isNotBlank(payId) && StringUtils.isNotBlank(state) && StringUtils.isNotBlank(parent_payment)) {
//
//                            String id = resource.getId();
//                            String payment_mode = resource.getPayment_mode();
//                            String protection_eligibility = resource.getProtection_eligibility();
//                            String protection_eligibility_type = resource.getProtection_eligibility_type();
//                            //Amount
//                            Amount amount = resource.getAmount();
//                            if (amount == null) {
//                                logger.info("请求amount参数为null");
//                                return null;
//                            } else {
//                                String total = amount.getTotal();
//                                String currency = amount.getCurrency();
//                                //Details
//                                Details details = amount.getDetails();
//                                if (details == null) {
//                                    logger.info("请求details参数为null");
//                                    return null;
//                                } else {
//                                    String subtotal = details.getSubtotal();
//                                    //Transaction_fee
//                                    Transaction_fee transaction_fee = resource.getTransaction_fee();
//                                    if (transaction_fee == null) {
//                                        logger.info("请求transaction_fee参数为null");
//                                        return null;
//                                    } else {
//                                        String value = transaction_fee.getValue();
//                                        String currencys = transaction_fee.getCurrency();
//
//                                        if (!payId.substring(0, 2).equalsIgnoreCase("WC")) {
//
//                                            int c = notificationpaymentService.findCountByInvoiceNumber(payId);
//                                            if (c <= 0) {
//
//                                                PaypalpaymentResults results = new PaypalpaymentResults();
//                                                results.setPaypal_id(id);
//                                                results.setState(state);
//                                                results.setInvoice_number(payId);
//                                                results.setPayment_mode(payment_mode);
//                                                results.setProtection_eligibility(protection_eligibility);
//                                                results.setProtection_eligibility_type(protection_eligibility_type);
//                                                results.setParent_payment(parent_payment);
//                                                results.setTotal(total);
//                                                results.setCurrency(currency);
//                                                results.setSubtotal(subtotal);
//                                                results.setTransaction_fee(value);
//                                                results.setTransaction_fee_currency(currencys);
//                                                notificationpaymentService.addPaypalpaymentResults(results);
//                                                logger.info("支付网关-payapal-webhook-的回调信息入库完成！");
//                                            }
//
//                                            //回调的订单是成功的才要入库和操作
//                                            //支付成功
//                                            if (!payId.substring(0, 2).equalsIgnoreCase("WC") && "Completed".equalsIgnoreCase(state)) {
//
//                                                int count = orderService.findPayIdByNotify(payId);
//                                                if (count <= 0) {
//                                                    // 成功的回调数据入库：根据支付id和金额入库：user_order_package_t
//                                                    List<UserOrderPackage> deviceCodeList = orderService.queryDeviceCodeByPayId(payId);
//
//                                                    for (UserOrderPackage uo : deviceCodeList) {
//                                                        String deviceCode = uo.getDeviceCode();
//
//                                                        if (StringUtils.isNotBlank(deviceCode)) {
//                                                            String str1 = deviceCode.substring(0, 1);
//                                                            if (!str1.equals("卡") && !str1.equalsIgnoreCase("c")) {
//                                                                UserOrderPackage order = new UserOrderPackage();
//                                                                order.setOrderStatus("3");
//                                                                order.setUpdateDate(sdf.format(new Date()));
//                                                                order.setOrderTime(s.format(new Date()));
//                                                                order.setPayId(payId);
//                                                                order.setPayCurrency(currency);
//                                                                order.setPayAmount(total);
//                                                                order.setPayType(Constant.PAY_PAYPAL);
//                                                                order.setPayRst("success");
//                                                                order.setIsNotify("1");
//                                                                order.setPayAccount("1");
//                                                                order.setTransactionId(parent_payment);
//                                                                orderService.updateWeiXinPayRst(order);
//
//                                                            } else {
//                                                                UserOrderPackage order = new UserOrderPackage();
//                                                                //待发货
//                                                                order.setOrderStatus("1");
//                                                                order.setPayId(payId);
//                                                                order.setPayCurrency(currency);
//                                                                order.setPayAmount(total);
//                                                                order.setPayType(Constant.PAY_PAYPAL);
//                                                                order.setPayRst("success");
//                                                                order.setIsNotify("1");
//                                                                order.setPayAccount("1");
//                                                                order.setTransactionId(parent_payment);
//                                                                orderService.updateWeiXinPayRst(order);
//                                                            }
//                                                        } else {//deviceCode没取到值，但是支付记录还是要入库
//
//                                                            UserOrderPackage order = new UserOrderPackage();
//                                                            order.setUpdateDate(sdf.format(new Date()));
//                                                            order.setOrderTime(s.format(new Date()));
//                                                            order.setOrderStatus("3");
//                                                            order.setPayId(payId);
//                                                            order.setPayCurrency(currency);
//                                                            order.setPayAmount(total);
//                                                            order.setPayType(Constant.PAY_PAYPAL);
//                                                            order.setPayRst("success");
//                                                            order.setIsNotify("1");
//                                                            order.setPayAccount("1");
//                                                            order.setTransactionId(parent_payment);
//                                                            orderService.updateWeiXinPayRst(order);
//                                                        }
//
//                                                    }
//
//
//                                                    //成功的回调数据入库：根据支付id和金额入库：user_order_payment_t
//                                                    UserOrderPayment payment = new UserOrderPayment();
//                                                    payment.setPayId(payId);
//                                                    payment.setPayCurrency(currency);
//                                                    payment.setPayAmount(total);
//                                                    payment.setPayType(Constant.PAY_PAYPAL);
//                                                    payment.setPayRst("success");
//                                                    payment.setTransactionId(parent_payment);
//                                                    paymentService.updateWeiXinPayRst(payment);
//
//                                                    //无卡订单支付结果入库：user_nocard_order_t
//                                                    UserNoCardOrder noCardOrder = new UserNoCardOrder();
//                                                    noCardOrder.setPayId(payId);
//                                                    noCardOrder.setPayRst("success");
//                                                    userNoCardOrderService.updatePayRst(noCardOrder);
//
//                                                    //将去北京做支付结果通知的工作交到具体的orderService处理类中去
//                                                    List<UserOrderPackage> userOrderList = orderService.queryOrderByPayIdAndAmount(payId, total);
//
//                                                    if (userOrderList != null && !userOrderList.isEmpty()) {
//                                                        for (UserOrderPackage u : userOrderList) {
//                                                            String partnerCode = u.getPartnerCode();
//                                                            String orderId = u.getOrderId();
//                                                            String deviceId = u.getDeviceCode();
//                                                            String Amount = u.getPayAmount();
//                                                            String secret = partnerService.findSecretByPartnerCode(partnerCode);
//                                                            logger.info("查询到的订单orderId是:" + orderId + ";DeviceId是:" + deviceId + ";payAmount是：" + Amount + ";密钥是：" + secret);
//
//                                                            RequestNotify notify = new RequestNotify();
//                                                            notify.setDeviceId(deviceId);
//                                                            notify.setOrderId(orderId);
//                                                            notify.setPayAmount(Amount);
//                                                            notify.setPayType(Constant.PAY_PAYPAL);
//                                                            notify.setSecret(secret);
//                                                            notify.setPartnerCode(partnerCode);
//                                                            // 开始组装json
//                                                            String requestStr = JSON.toJSONString(notify);
//                                                            logger.info("请求北京的接口请求报文：" + requestStr);
//                                                            String url = Constant.requestURI + Constant.iot_notify;
//                                                            // 发送post请求，并接收返回结果
//                                                            String returnStr = HttpUtil.httpPost(url, requestStr);
//                                                            logger.info("北京回复的下发接口响应报文：" + returnStr);
//                                                            ResponseNotify re = JSONArray.parseObject(returnStr, ResponseNotify.class);
//
//                                                            if (re != null) {
//                                                                if (true == Constant.RET_CODE_0000.equalsIgnoreCase(re.getRetCode())) {
//                                                                    UserOrderPackage user = new UserOrderPackage();
//                                                                    user.setOrderId(orderId);
//                                                                    user.setPayId(payId);
//                                                                    user.setIsNotify("0");
//                                                                    orderService.updateWeiXinIsNotify(user);
//                                                                    logger.info("同步-成功");
//
//                                                                } else {
//                                                                    logger.info("同步不成功");
//                                                                    return null;
//                                                                }
//                                                            } else {
//                                                                logger.info("同步接口异常");
//                                                                return null;
//                                                            }
//
//
//                                                        }
//
//                                                    } else {
//                                                        logger.info("数据库查询到的订单为null");
//                                                        return null;
//                                                    }
//
//
//                                                }
//
//                                            } else {//订单状态不是完成的状态
//                                                logger.info("支付失败:" + state);
//                                                return null;
//                                            }
//                                        }
//                                    }
//                                }
//                            }
//                        } else {//回调的主要参数为空
//                            logger.info("回调的主要参数为空");
//                        }
//                    }
//                }
//
//            } catch (Exception e) {
//                e.printStackTrace();
//                logger.info("ipn回调reStr转码失败：" + e);
//                return null;
//            }
//        } else {
//            logger.info("paypal的webhook回调为null");
//            return null;
//        }
//        return null;
//    }
//}
//
//
//
//
